home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
PC-SIG: World of Games
/
PC-SIG World of Games (CDRM1080710) (1993).iso
/
ENT
/
DISK1833.ZIP
/
SAPPH111.ARC
/
MANUAL.TXT
< prev
next >
Wrap
Text File
|
1989-07-31
|
82KB
|
3,170 lines
S A P P H I R E
A COMPUTER BULLETIN BOARD SYSTEM
Release: 1.10
Operator's Manual
P I N N A C L E S O F T W A R E
P.O. Box 386, Town of Mount Royal
Montreal, Quebec, Canada H3P 3C6
(514) 345-9578
NOTICES
This publication could include technical inaccuracies or typographical errors.
Changes are periodically made to the information herein; these changes will be
incorporated in new editions of this publication.
Version 1.x of Sapphire is distributed as shareware. Shareware terms do not
extend to the source code of Sapphire, nor to later versions, nor accessories,
unless they are declared as shareware by Pinnacle Software.
You may try out Sapphire for 30 days. If you continue to use it after that
time, you must register it. ($45)
Sapphire is Copyright (C) 1988 by Pinnacle Software.
Turbo Pascal is a Trademark of Borland International.
DSZ is a Trademark of Omen Technology.
ARC is a Trademark of System Enhancement Associates.
Support for Registered Sysops
The Sapphire release number follows this pattern:
Version Number Upgrade Level
| |
1 . 1 0 A
/ \
Correction Level Internal ID
A registered Sapphire owner is entitled to operate any release of Sapphire with
the same Version and Upgrade Level, and the same or different Internal ID or
Correction Level. Thus, corrections to the program ("bug fixes") can be
obtained at no cost.
Additional benefits of registration are described by the REGISTER program.
Support for Unregistered Sysops
If you are an unregistered Sapphire operator, you may call Pinnacle Software
for assistance if you can not complete the basic installation successfully.
But you may be able to save yourself long-distance charges: experience has
shown us that 95% of all installation problems can be solved by the advice
given in the trouble-shooting section of this manual.
ii
Credits
The following people have contributed to the Sapphire project:
Programming and Design ................... Tim Campbell
Marketing and Design ..................... James Ludwick
Beta-testing ............................. Yves Lacombe, Steve Mitchell
Thanks also to staff members for dedication above and beyond the call of duty:
Secretarial Services ..................... Lily Wilson
Mail Room ................................ T. Toc
Software Librarian ....................... P. Katt
iii
TABLE OF CONTENTS
NOTICES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ii
Support for Registered Sysops
Support for Unregistered Sysops
INTRODUCTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
What is Sapphire?
What Isn't Sapphire?
INSTALLING SAPPHIRE . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
What You Need
Hard and Floppy Disk Considerations
Basic Steps
STEP 1. Make a Copy of the Packaged Diskettes
STEP 2. Prepare a Place for the Files to Go
STEP 3. Put the Files Where They Belong
STEP 4. Updating the CONFIG.SYS File
STEP 5. Customize Sapphire According to Your Needs
Saving Time on the Customization Step
STEP 6. Run a Local Test
Extra Step for Floppy Diskette Users
STEP 7. Run a Remote Test
TROUBLE-SHOOTING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Problem 1. Installer Error
Problem 2. Modem Configuration
Problem 3. File Problem
Problem 4. Sapphire Bug
Problem 5. Incompatible Hardware and Software
SYSTEM OPERATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Duties of the System Operator
Signing On Locally
Signing on as SYSOP
Function Keys
Backups
User File Maintenance
Message File Maintenance
Library Maintenance
Files Maintenance
MISCELLANEOUS OPERATIONAL NOTES . . . . . . . . . . . . . . . . . . . . . . 18
Gear Shift
Customization
SLOGO.TXT; Other .TXT Files; Command Levels
Password Changes
The Status Line
Online Validation and Banishment
Yoo-Hoo and Rename
ii
MEMBER PRIVILEGES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Level 1: Non-member
Level 2: Basic Member
Level 3: Special Member
Level 4: Top Notch Member
Level 5: Inner Circle Member
Level 6: Aide-de-Sysop
Level 7: Co-Sysop
Level 8: Sysop
DOORS AND EVENTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Definitions
Applications for Event Processing
Applications for Doors Processing
Coding Your Batch Files
How EXTERNAL.BAT Works; Batch Templates
Writing Door and Event Programs
FILE TRANSFER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
What is File Transfer?
Installing File Transfer
Adding Software Locally
Adding Software Remotely
How Online Documentation Works
Transfer Protocols
APPENDIX A -- ORDERING INFORMATION . . . . . . . . . . . . . . . . . . . . 33
Additional Products from Pinnacle Software
APPENDIX B -- SAPPHIRE DESIGNER NOTES . . . . . . . . . . . . . . . . . . . 35
Some Background
Why Sapphire was Written
Notes About the Design Philosophy
Commands; Maintenance; 40 Column Text; The Cool Reception;
Conclusion
APPENDIX C -- Versions 1.1 and 2.x . . . . . . . . . . . . . . . . . . . . 40
Thank-You
INDEX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
iii
INTRODUCTION
What is Sapphire?
Sapphire is a computer bulletin-board system. You can use it to transform your
computer into a kind of "answering machine", so that people equipped with
modems can dial up your computer, read and send messages, browse through text
files, and exchange software.
There are countless BBS's (bulletin board systems) throughout the world. Many
are run by businesses; most are run by computer hobbyists who like to share
with others the enjoyment they derive from their hobby.
All you need to become a "sysop" (system operator) is an IBM-PC computer or
compatible, a modem, and a phone line dedicated to the BBS.
There are many different brands of BBS software available; Sapphire is just one
example. Each brand of BBS suits a different kind of sysop. Sapphire is
specifically designed for:
-- Stores
-- Computer consultants
-- Customer support lines
-- People who have never run a BBS before
-- People who have run a BBS before and found it too much work
Sapphire is very easy to set up and maintain. A moderately experienced
computer user will set it up in less than an hour and spend approximately one
hour per week performing the various duties required of a sysop.
There are many ways to design a BBS. This system has been designed in the form
of a "conversation club". Thus, instead of having "users", a Sapphire system
has "members".
Nevertheless, Sapphire's design is quite flexible, so you can modify it to look
the way you want. If you don't like the "club" image, you can change it to
something else.
1
What Isn't Sapphire?
That might sound like a strange question, but we've already discussed what
Sapphire can do, so let's take a moment to discuss what it won't do. Maybe
this will save a few hours of your time!
But before we go further, let me ask you to think about this question:
Why do you want to run a BBS?
Sapphire is (according to a survey I've conducted) by far the easiest BBS to
install and operate. This makes it ideal for the people mentioned earlier
(store managers, consultants, new or over-worked sysops, etc.), but there are a
few things that could make this system inappropriate to your needs.
First of all, Sapphire is very different from other BBS's. If you are a new
sysop, you may feel that you should run a BBS that looks like all the other
ones. If that's the case, I ask you to try Sapphire for a month. Find out how
easy it is for both you and your users. Then ask somebody who runs another BBS
how much time he or she spends every week "maintaining" his or her system, or
how many users have mastered every function of the BBS. I believe you'll find
this experiment informative.
For a discussion of Sapphire's revolutionary design, refer to Appendix B
(Designer Notes).
There is one kind of sysop who will not want to run Sapphire. That is the
power-sysop.
The power-sysop is somebody who runs either a multi-line system (which is not
supported by Sapphire) or a BBS supporting hundreds of users and dozens of
message-base areas. Sapphire simply does not address the needs of such
systems. This is in keeping with the "install-and-forget" design of the
system, but it does mean that Sapphire doesn't suit everybody.
2
INSTALLING SAPPHIRE
What You Need
To run Sapphire, you need a PC-compatible computer with at least 512K of RAM, 2
floppy disk drives (or a hard disk -- which is recommended) and a "smart"
modem. If you don't have a smart modem, you can still run Sapphire in "local"
mode.
Sapphire will run on MS- or PC-DOS Version 2.00 and higher.
Hard and Floppy Disk Considerations
If you install on floppies, the maximum size of a message will be 27 lines, and
the upload/download function (whereby your computer can receive and send files)
will not be available. If you install on a hard disk (i.e. no Sapphire files
are on the A: or B: drives), messages may have up to 50 lines.
Basic Steps
What follows is a brief description. More details are given later.
To get Sapphire running on your system, you must follow these steps:
1. Make a backup copy of the original diskette.
2. Prepare a destination for the Sapphire files.
A. If using a hard disk, this means creating a directory, usually named
Sapphire.
B. If using floppies, this means formatting two diskettes -- one with
DOS and one without.
3. Copy the necessary files from the original diskettes to their proper place
(on a hard disk or a floppy).
4. Prepare your system for Sapphire by placing a FILES=20 statement in your
CONFIG.SYS file.
5. Configure Sapphire to work according to your wants and needs. The SCONFIG
program helps you do this.
3
6. Run a local test. The SAPPHIRE LOCAL command will do this.
7. Run a remote (modem) test. The SAPPHIRE command does this.
STEP 1. Make a Copy of the Packaged Diskettes
1. Insert the SAPPH111 diskette into your A: drive. Insert a blank, for-
matted diskette into your B: drive.
2. Enter the following DOS command:
COPY A:*.* B:*.*
3. Prepare a label, reading BACKUP OF SAPPH111 and affix this to the diskette
from the B: drive.
4. Repeat steps 1 to 3 for the SAPPH112 diskette.
STEP 2. Prepare a Place for the Files to Go
FLOPPY DISK USER
1. Format a diskette with DOS and label this Sapphire A.
2. Format a diskette without DOS and label this Sapphire B.
HARD DISK USER
1. Change to the root directory of your hard disk.
2. Enter the command MD Sapphire to create a directory.
4
STEP 3. Put the Files Where They Belong
FLOPPY DISK USER
1. Copy all files from the SAPPH111 diskette to the Sapphire A diskette.
2. Put the Sapphire A disk in drive A: and the Sapphire B disk in the B:
drive.
HARD DISK USER
1. With the SAPPH111 diskette in the A: drive, change to the Sapphire
directory of your hard disk.
2. Enter the following DOS command:
COPY A:*.*
3. Insert the SAPPH112 diskette into the A: drive.
4. Enter the following DOS command:
COPY A:*.*
STEP 4. Updating the CONFIG.SYS File
Sapphire keeps quite a few files open at once, so you will have to use a text
editor (such as the Turbo Pascal editor, or Wordstar in non-document mode) to
modify or create a file called CONFIG.SYS.
FLOPPY DISK USER: The file will go on your Sapphire A diskette.
HARD DISK USER: The file will go in your root directory (C:\ usually).
The file should contain the following lines:
FILES=20
BUFFERS=20
In order for the CONFIG.SYS information to take effect, you must boot from a
disk containing that file. Remember: the file is read only when you power up
your system. Sapphire won't work if you boot ("power up") from a floppy that
doesn't have the proper CONFIG.SYS file.
For more information about CONFIG.SYS, see your DOS manual.
5
STEP 5. Customize Sapphire According to Your Needs
At the DOS prompt, enter this command: SCONFIG
This command will take you through all the steps needed to configure your
system. Select the "First-timers" checklist on the menu. After you've read
through that, select the "Total Configuration" option. This must be run in its
entirety before you try to run Sapphire.
Saving Time on the Customization Step
Initially, the system is set up as a "conversation service" named "The Pinnacle
Club". If this is appropriate to your requirements, feel free to use the name
and the text files. However, if you have other plans for your Sapphire system,
you can modify the various TXT files to conform to your needs.
STEP 6. Run a Local Test
Make sure your time and date are set correctly, then enter this command:
SAPPHIRE LOCAL
This runs Sapphire without any reference to the modem.
The first time you run Sapphire, it will create some data files. This can take
a while -- especially on floppy-based systems. Once that is done (hopefully
without severe errors) you will see the words "Awaiting Visitor". This means
everything is functioning properly.
If you'd like to sign on now, refer to the "System Operation" section of this
manual. If you want to move to the remote test, press the ALT-F9 key
(explained later) to shut down Sapphire.
If you had any problems, refer to the "Trouble-Shooting" section of this
manual.
6
Extra Step for Floppy Diskette Users
Once you're satisfied that the program basically works (although you might see
some messages about missing files), you can delete the SCONFIG.EXE file to make
room on the Sapphire A diskette. Don't delete it if it's your only copy! You
should have made a spare copy in Step 1. Once you've done this, you can copy
all the files from SAPPH112 onto the Sapphire A diskette.
STEP 7. Run a Remote Test
You can start up Sapphire with full modem support by typing the command:
SAPPHIRE
If this gives you any problems, refer to the "Trouble-Shooting" section of this
manual.
7
TROUBLE-SHOOTING
In order of likelihood, the most common problems are:
1. You omitted a step or misunderstood the instructions.
2. The modem isn't configured right.
3. There is a file problem of some kind.
4. Sapphire has a bug.
5. The hardware is incompatible.
Problem 1. Installer Error
I apologize for listing you as the most probable cause of the problem.
However, the fact is: most installation problems arise because the person
doing the installation has either skipped a step or didn't understand the
instructions.
Please review what you have done, or ask somebody else to re-read the instruc-
tions. Statistically, this really does give you the best chance of solving
your problem.
Problem 2. Modem Configuration
If you had a problem running Sapphire in LOCAL mode, then your problem wasn't
the modem; skip this section.
If you have a Hayes-compatible modem, with Hayes-compatible switches, make sure
your switches are set this way:
Switch 1 UP: Computer should use the Data Terminal Ready (DTR) line
Switch 2 UP: Result codes sent as words
Switch 3 DOWN: Result codes are sent to the computer
Switch 4 UP: Echo incoming characters
Switch 5 DOWN: Don't answer incoming calls
Switch 6 UP: Computer should use the Carrier Detect (CD) line
The positions of switches 7 and 8 are variable, depending on your phone type
and your modem brand. Consult your modem's manual to determine what should be
done with these switches.
8
Some modems don't have DIP switches; you have to configure the modem using
commands. In this case, you will have to accomplish with commands what we were
trying to do with the switches. You will find that your modem has commands to
perform the important functions of switches. For Hayes-compatible modems,
these commands are preceded by the "&" character (&C1&D2 being the usual
values).
If you have an external modem, are you sure that pins 8 and 20 are connected
from one end of the cable to the other? These are, respectively, the Carrier
Detect and Data Terminal Ready signals. Sapphire can operate without the DTR
signal (see the SCONFIG program) but it's best to have it available, if
possible.
When Sapphire talks to the modem, you should see something like this:
Modem: ATS0=1 Response: OK
If you see something like this:
Modem: /////// Response: <TIME-OUT>
...it means Sapphire can't see your modem. Check in SCONFIG to make sure that
you specified the write COM port. Or if you have an internal modem, check that
it's really on the COM port you think it's on.
If you see something like this:
Modem: /////// Response: OK
It means that your modem is seeing the command and accepting it, but not
echoing back the characters. Check your modem set-up string to make sure that
you've told the modem to echo. (Since the first command sets the echo,
sometimes it will be displayed as slashes; this is normal.)
If you see nothing whatsover -- not even "Modem:" -- it means that your modem
has the CD (Carrier Detect) line locked on. Sapphire won't try to send
commands to a modem that supposedly has a carrier there, since a carrier means
there's a caller at the other end. If your modem has dip-switches, set them
correctly (described above). If your modem uses & commands, you will have to
get into a terminal program (such as ProComm, Boyan, QModem, Telix, etc.) and
type the command to unlock the CD line. This command is typically AT&C1.
Some other kinds of modem problems can be fixed by experimenting with the modem
settings configured by the SCONFIG program.
By the way, some computers and modems just can't survive running 24 hours per
day. If your system occasionally crashes, try turning it off for an hour a
day. It may be necessary to install a cooling fan in the computer unit and
remove the back panel of the modem.
Never overlook the obvious. If you have strange modem problems, check your
cables and so on. Is everything plugged in solidly?
9
Problem 3. File Problem
If you suspect you have some kind of file problem, ask yourself these ques-
tions:
1. Did you put FILES=20 in your CONFIG.SYS file? If you did this, you must
re-boot your system for this new value to take effect.
2. Are all the required files are available to Sapphire? Did you specify the
correct drive and/or directory when providing the file path data with the
SCONFIG program?
3. If you're using floppies, do you have the right floppies in the drives?
Neither should have a write-protect tab.
4. Is it possible you inadvertently deleted a file? If you did, get a new
copy from the installation disk.
If you get I/O errors, you can look them up in a copy of the manual for Turbo
Pascal Version 4.0. This might help you solve difficult problems.
Problem 4. Sapphire Bug
If you think you've spotted a bug in Sapphire, send us a letter describing the
problem. The most important thing you can do is make it happen on demand.
That is to say, before you report a problem, try to understand it well enough
to make it happen on purpose.
To assess a problem, I appreciate getting as much information as possible.
Send us information such as:
1. What do you think causes the problem?
2. How often does it happen?
3. Does it happen to everybody or just certain people?
4. Did it start just recently or has it always happened?
5. If it just started, what changed just before it started?
6. What have you done to try to solve the problem?
Print-outs and screen-dumps can be helpful in assessing a problem.
IMPORTANT: It may be over-stating the case, but if you are reporting a
problem, you really do have a better chance of getting a useful
answer if you provide us with answers to the numbered questions,
10
above. Take a moment to note down the answers before calling us
or writing to us. It'll save time in the end.
Problem 5. Incompatible Hardware and Software
Sapphire has run problem-free on a wide variety of computers, with many
different brands of modem. I've heard very few complaints about incompati-
bility. However, it is possible that certain types of modems (especially
internal modems) might not behave properly. If you suspect your modem, try
borrowing another brand for a while.
There can also be problems with multi-tasking software. The Sapphire serial
routines are poll-driven rather than interrupt-driven. What this means is that
if you're running multi-tasking software, your users may lose characters when
they type. I plan to address this drawback in a later version of Sapphire.
For the vast majority of systems, however, this is not a problem.
If you let me know what is going wrong, I'll try to fix Sapphire to work with
your hardware.
11
SYSTEM OPERATION
Duties of the System Operator
The user-name for the System Operator is: SYSOP. You can also sign up with
your real name and give yourself permanent sysop authority.
As the sysop, your main task is to "validate" (grant membership to) new
members. You do this with the VALIDATE command.
You should also backup your files from time to time, using the DOS BACKUP
command, or a similar product.
If you have run other BBS's before, you may be expecting that there are other
duties to perform, such as maintaining upload/download lists, compressing files
and so on.
But you don't have to do any of that. Sapphire handles everything automatic-
ally. Your only tasks are Validation and Backups. And as you'll see later,
even the Validation task is far easier than for other BBS's.
Signing On Locally
When Sapphire is waiting for a caller, press any key. This will "wake up"
Sapphire and freeze out the modem by putting it "off-hook". You can then sign
on as if you'd dialed up.
If you don't want your phone off the hook, you can start up Sapphire in a
non-modem mode. At the DOS prompt, type:
SAPPHIRE LOCAL
This completely ignores anything to do with the modem.
12
Signing on as SYSOP
The information presented below is based on the default set-up. For security
reasons, the password shown here should be modified (using the BYE PASSWORD
command) as soon as possible.
1. Wait until Sapphire is waiting for a visitor.
2. Press a key to wake it up.
3. When asked for your name, press Space-bar, then Return.
4. When you're asked for the password, type SYSOP then Return.
Function Keys
The function keys are active whenever somebody is connected. Here's what they
do:
REGULAR FUNCTION KEYS
F 1 Function-key help.
F 2 Enable Yoo-Hoo. Makes a noise when a specified person shows up.
F 3 Removes 10 minutes online-time from whoever is connected.
F 4 Adds on 10 minutes online-time to whoever is connected.
F 5 Enable/Disable the type-to-sysop (CHAT) command.
F 6 Break in to chat with the person who is currently online.
F 7 Not used.
F 8 Not used.
F 9 Modify number-of-hours-between-calls
F10 Sound effects on/off.
13
ALT FUNCTION KEYS
F 1 Turn printer on and off (uses LPT1).
F 2 Freeze out the person on the modem. You do this if you want to enter a
few quick commands on his behalf but don't want him to see what you are
typing. Press ALT-F2 to restore communication.
F 3 Subtract 1 from the membership level of the person who is signed on.
F 4 Add 1 to the membership level of the person who is signed on.
F 5 Announce mode on/off. In announce mode, nobody can log on. All
people get to see is your sign-on logo. Handy for announcements.
F 6 Send file. This is used to transmit a text file -- usually while chatting
with a remote user. This function duplicates exactly the normal file
transmission, so you can't use it while the user is already reading a file
or a message.
F 7 Changes the name of the visitor to one that you specify. The new
name is checked to prevent duplication.
F 8 Instant banishment. Removes visitor from valid caller list.
F 9 Shut-down. If nobody is signed on, Sapphire ends immediately. If
somebody is logged on, Sapphire will end when he or she logs off.
F10 Turn Ultra-Mode on or off. Ultra-Mode is a kind of "Super-Sysop"
mode. While in this mode, a user may...
Execute commands of any level
Send any number of messages (usual limit is Level + 3 SENDs per visit)
Use the CHANGE command on somebody else's message
Read private messages
Call back in less than the usual time (Level 6+ can always do this)
Skip around a devalidation message at signon and proceed normally
The user named SYSOP is automatically in Ultra-mode. Other users -- even
other Level 8 users -- must have it turned on explicitly by the ALT-F10
key. When ALT-F10 is pressed, a long, raucous sound is emitted from your
computer's speaker. This tends to discourage people from hitting the key
"by accident".
Do not get the impression that the existence of Ultra-Mode allows you to
give out Sysop (Level 8) authority lightly. You should reserve that level
for yourself only. However, if you would prefer to respect people's
privacy, you could sign up with your real name, then use the ALT-F4 key to
bring yourself up to Level 8. Ultra-Mode can then be used only when
absolutely necessary.
14
Backups
Perhaps the most important thing a sysop can do is make backups! The most
important file, which should be backed up on a regular basis, is the user file,
which is named:
SUSER.DAT
When making backups, it's a good idea to have a "father" and "grandfather"
copy. You can do this easily with a batch (.BAT) file. Here's a sample batch
file for backing up the user list:
ECHO OFF
ECHO Backing up Sapphire User List file to A: drive
DEL A:USERBAKC.DAT
RENAME A:USERBAKB.DAT A:USERBAKC.DAT
RENAME A:USERBAKA.DAT A:USERBAKB.DAT
COPY C:\SAPPHIRE\USERLIST.DAT A:USERBAKA.DAT
DIR A:USERBAK*.DAT
You may also wish to backup the messages, but this is not as critical. (If you
have the time, it is still a wise move.) If you decide to do this, the files
to be backed up are:
-- The message-pointer file SNEXT.DAT
-- The message-index file STIME.DAT
-- The B* files in the message directory (e.g. B001)
User File Maintenance
The user file does not require maintenance. It will hold up to 350 user names,
which has proven to be more than enough for a lively BBS.
NOTE: If you require a larger user base, please contact Pinnacle Software
for a special edition of Sapphire (priced separately).
When a new user signs up, Sapphire looks for an inactive user to replace. The
higher the level of the member, the longer it takes for him to be considered
inactive. Here are the required call-back times:
15
Level Time-Out (Days) Member Level Description
1 10 Non-Member
2 50 Basic Member
3 60 Special Member
4 70 Top Notch Member
5 80 Inner Circle Member
6 90 Aide-de-Sysop
7 100 Co-Sysop
8 110 Sysop
Note that this is only the time after which a user is eligible for replacement.
If there are no new sign-ups to replace his name on the list, his user-record
can remain valid forever.
The user named SYSOP is never eligible for replacement.
Message File Maintenance
The message files do not require maintenance. Sapphire maintains 225 message
files. When the last one is used up, the first one is replaced, thereby
"deleting" the oldest one.
All messages share the same space. There is no way to preserve a message
permanently. If you have something you want to keep available for a long time,
insert it into the library directory as a .TXT file and tell the members to use
the LIBRARY command to review it.
If you really must get rid of a message, use Sapphire's ERASE command. There
is no need to use DOS DEL or ERASE.
Library Maintenance
The Sapphire Library does not require maintenance.
Any .TXT file that appears in the Library directory will appear on the Library
list. The 39-character description of each article is taken from the first
line of each file.
Thus, you can add to the Library simply by copying text files into the Library
directory, and remove articles using the DOS DEL command. For your members'
convenience, you might sort the directory in reverse-date order, using a
utility such as Norton's DS command.
16
Files Maintenance
The files (upload/download) collection does not require maintenance.
Sapphire maintains a list of 500 uploads. When the list is full, programs are
dropped from the list and deleted from the file directory according to a
formula based on:
(A) Number of times the file has been downloaded
(B) How many days have elapsed since the last request
(C) How many days the file has been on the list
In other words, Sapphire will identify and replace the least popular file.
NOTE: For more information, see the "File Transfer" section of this manual.
17
MISCELLANEOUS OPERATIONAL NOTES
Gear Shift
Sapphire supports adjustable output speed. During output, a user can press one
of the number keys to "shift gears" for a comfortable reading speed. The keys
run from 1 (slow) to 9 (fast). The 0 key is the "top gear" key. It sets
output speed to maximum.
When the main command prompt comes up, output is reset to full speed. This has
proven to be a convenient arrangement. However, the user can reset his
"default gear", via the SPECS command. Certain types of line-noise problems
have been solved by selecting a lower output speed.
Customization
There are several files that you can modify to your taste. If you're just
beginning, you can skip this -- but come back to this section after you've
finished your initial experimenting.
To modify these files, you will need a text editor. The standard EDLIN editor
is an example of a text editor. You can also use the Turbo Pascal editor, or
Wordstar in non-document mode. Most word processors have a "Text" or "DOS Text
File" mode.
In technical terms, a text editor is any editor that marks separate lines with
a "Carriage Return" character and marks the end of a file with a "Control Z".
SLOGO.TXT
You can modify the SLOGO.TXT file to specify a 20-line banner that your users
will see at connect time. You can mention the name of your BBS in this banner.
The names "Pinnacle Club" and "Sapphire" do not appear anywhere in the program
itself (except for the version and copyright notice).
However, I strongly encourage you to call your system "The Pinnacle Club".
That way, people already familiar with the software will know what to expect,
and may even seek out your system because they like the way it works.
The SLOGO.TXT file contains a helpful collection of sign-on logos, which you
can modify to your needs, using a text-editor program.
18
Other .TXT Files
The other text files, such as SINFO.TXT, SNEWH.TXT etc., contain straight text
for the members to read. You should read them yourself; you'll learn what
they'll learn and you'll spot any changes that must be made, such as address
and system-name information.
Command Levels
You may modify the command levels by altering the files SCMDL.DAT with a text
editor, or you can delete the file to use the default settings. Make sure you
have a backup copy before you delete it.
Password Changes
There is an undocumented feature in Sapphire which allows users to change their
passwords. If you sign off by typing BYE PASSWORD (no abbreviations) you will
be asked for a new password.
This feature was not explicitly documented because there has long been an
argument among computer security experts about the wisdom of letting users
change (or even select) their passwords.
It might be best to keep the BYE PASSWORD feature secret if you give users a
new password when you validate them. Or perhaps you'll decide to avoid letting
them change their password simply because they tend to forget what their new
password is.
Whether or not you let your users know about this feature is up to you.
The Status Line
The top two lines of the Sapphire screen provide you with some information
about what is going on. The top line lists membership level, time left, state
icons (explained later), and the last item that went in the system log. The
second line lists the member's sign-on name and full name, phone number.
The state icons are single-character indicators. You can think of them as
on/off lights, if you wish. Here's what they mean:
19
Downwards-pointing triangle: The ALT-F9 key was pressed to put the system in
"shutdown mode" and will be closed when it next disconnects (i.e. when the
current visitor logs off). Memory aid: points downwards to mean "going down".
Infinity symbol (sideways 8): Ultra-mode is on. This is turned on and off by
the ALT-F10 key. Memory aid: "The infinite power of Ultra-mode is available."
Diamond: The system is waiting for somebody in particular to show up. You can
specify a list of names by pressing the F2 key. Memory aid: the people in the
list are highly prized.
Happy face: People who use the CHAT command will be placed directly in
conversation, instead of seeing an "unattended" message. Memory aid: you're
in a good mood, so you'll talk to people.
Question mark: the current user entered the CHAT command to try to get in
touch with you. The CHAT spell makes a noise if you have sound turned on.
Memory aid: "Hello? Sysop?"
Exclamation mark: You pressed the ALT-F6 key to put the system into "announce
only" mode. People will only see the SLOGO.TXT data before getting discon-
nected. Memory aid: "Hear ye, hear ye!!!"
Double-note: Sound is on. Turn it on or off with the F10 key. Memory aid:
music is sound.
Triple-line: Printer is active. The printer (which should be connected to the
parallel port LPT1) is turned on or off by the ALT-F1 key.
These icons may take a while to get used to, but before long, you'll be able to
tell at a glance what's happening on your system.
Online Validation and Banishment
ALT-F7 and ALT-F8 will validate or banish the current visitor. However, the
ALT-F7 key does not update the file until the member disconnects, so if you
have a system crash, the file will still reflect the old value. In general,
all data affecting a member's current session is lost if your system crashes,
since the members information is written only "on the way out". For this
reason, it is not possible for somebody to banish himself!
Yoo-Hoo and Rename
20
If you intend to run a BBS that does not tolerate aliases, but insists that
people use real names, the combination of F2 (Yoo-Hoo) and ALT-F7 (Rename) will
prove useful.
When you press the Yoo-Hoo key, you will be prompted to enter a list of names,
separated by slashes. For example, you might enter:
Dagger Lord/The Wombat of Love/Power Petunia/Superstar
When somebody signs on under any of the indicated names, Sapphire will make a
distinctive noise to alert you.
You can then break in (using F6 -- Chat) and tell the person that you are
changing his sign-on name to his real name. This can be done with the Rename
key. The Rename function will not allow you to change the name to an existing
name. Thus, if you already have a John on your system, you can't change
somebody else's name to John.
21
MEMBER PRIVILEGES
There are 8 "security levels" on Sapphire, ranging from level 1 (Non-member) to
level 8 (System Operator).
This section describes the original set-up for member privileges. You can
change these settings by altering the SCMDL.TXT file. These settings are also
used if SCMDL.TXT is missing.
Level 1: Non-member
May post in: Non-member message base.
Commands: COMMAND DESCRIPTION OF COMMAND
BYE Disconnect from system (i.e. logoff)
HELP Display a list of commands you can use
INFO Membership requirements for this system
SEND Leave a message for other users to read
SPECS Change the way things look around here
VERSION Display software version and copyright
Comments: Note the absence of the READ command.
Level 2: Basic Member
May post and read: Non-member and Basic member message bases.
May post in: Feedback to Sysop message base.
May read: Report from Sysop message base.
22
Additional commands: COMMAND DESCRIPTION OF COMMAND
EXPERT Switch between casual and expert mode
GIMMICKS Describes various tricks for messages
GRAPHICS Switch graphic characters on and off
HINTS Tricks and tips for using this system
LIBRARY Browse and read in our online library
MESSAGES Quick summary of messages (time & user)
NAMES Specify names for selecting READ etc.
PROTOCOL Select method used for file transfer
READ Read new messages left by other users
REVIEW Inspect a single message by DATE:MINUTE
RUN Run special external programs ("Doors")
SET Modify the DATE:MINUTE for READ command
TEXT Specify text to reduce READ output etc.
TIME Display how much time is left for visit
USERS Display information about our users
Level 3: Special Member
Additional base: Special Member.
Additional commands: COMMAND DESCRIPTION OF COMMAND
ACTIVITY Display system activity for past 7 days
CHANGE Modify a message you've sent previously
FILES List software available for downloading
GET Get some software from our collection
GIVE Contribute software to our collection
MOVE Move a message from one base to another
Level 4: Top Notch Member
Additional base: Top Notch.
Additional commands: COMMAND DESCRIPTION OF COMMAND
CHAT Page system operator for a conversation
OBSERVE Overview of logon/logoff activity, etc.
Comments: Note that lower-level members, when doing the USERS
command, see Top Notch members listed as "Special". Top
Notch messaging is hidden from lower levels.
23
Level 5: Inner Circle Member
Additional base: Inner Circle.
Additional commands: None.
Comments: Lower-level members, when doing a USERS command, see an
Inner Circle member listed only as "Special" (or "Top
Notch", in the case of Level 4 members). Inner Circle
messaging is hidden from lower levels.
Level 6: Aide-de-Sysop
May post in: Report from Sysop.
Additional commands: COMMAND DESCRIPTION OF COMMAND
ERASE Remove message (resets it to time 0:0)
Comments: This level of authority allows people to keep the system
tidy without having access to personal member information,
such as phone numbers.
Level 7: Co-Sysop
May read: Feedback to Sysop.
Additional commands: COMMAND DESCRIPTION OF COMMAND
BANISH Devalidate user (remove from user list)
DOORS Update your list of "Door" programs
DOS Shell out to DOS; type "EXIT" to return
DUMBTERM Start dumb terminal for outgoing calls
EVENTS Schedule your BBS's close-down events
PROBE Display user info (see also USERS cmd)
VALIDATE Grant a user a higher membership level
Comments: At this level, the USERS command gives more detailed
information, such as password and phone number. A co-sysop
can run the entire system remotely. He can not, however,
find out the sysop's password.
24
Level 8: Sysop
May post in: Logon Announcements.
Additional commands: COMMAND DESCRIPTION OF COMMAND
CLOSE Shut down system; prevent further calls
25
DOORS AND EVENTS
The highly technical information presented in this chapter is addressed to
experienced sysops only. If you are new to the joys of sysoping, it would
probably be best, for the time being, to avoid the DOORS and EVENTS commands.
Sapphire will function perfectly well without DOORS and EVENTS installed, so
you can safely skip this chapter and come back to it later.
Definitions
Doors and events are both instances where the Sapphire program ends and control
is returned back to DOS. In the case of a door, the shut-down is initiated by
a user; for events, the shut-down happens automatically, according to a
schedule you set up.
Applications for Event Processing
Consider the following batch file. (Note that the <-- arrow and following text
are comments, not part of the batch file.)
REM Batch File Autoback
:START <-- A batch file "label"
SRUN <-- The main Sapphire program
COPY SUSER.DAT A:SUSER.DAT <-- Copy the user list
GOTO START <-- Start over again
If you could arrange to have the BBS come down every night at 3:00, it could
make a spare copy of the user list on the A: drive. This would be very useful,
although of course you'd have to make sure that the A: drive always had a
floppy inserted and ready to go!
Set up in this way, you could leave town for a long weekend, confident that
your user list was being backed up every day.
This is only a very simple example of the benefits of event processing.
Another possible application is automatic dial-out via your favourite com-
munications program (to pick up mail, perhaps). Of course, you'd have to write
a "script" (i.e. a program that your comm program understands) in order to have
it dial out, sign on, pick up the mail, then return to DOS.
One very common use for event processing is to support network systems such as
Fido -- a very complicated topic beyond the scope of this manual.
26
Applications for Doors Processing
A door is an external program that a user can run from Sapphire. (It is, in
effect, a "door" into programs written by other people.)
There are dozens of door programs available. One example is the Pyroto
Mountain gaming system, which was written by Pinnacle Software. You can call
it as a door, giving your members a chance to play this intriguing game of
magic and politics.
Before making a door available to your members, you should review it carefully.
The quality of door software varies greatly; some may crash, thereby failing to
return to DOS and consequently taking your BBS "off the air".
Coding Your Batch Files
In an environment using doors and events or both, everything is tied together
with batch (.BAT) files. (For detailed information about batch files, consult
your DOS reference manual.)
The simplest kind of batch file was illustrated in the "automatic userlist
back-up" example shown earlier. This was a just a loop, executing one func-
tion. One problem, though ... you'll note that there was no way to get out of
the loop! So it wasn't a particularly useful program.
If you want to call Sapphire from any directory, put a batch file like the
following one (which you could call S.BAT) in one of the directories in your
PATH:
ECHO OFF <-- Stop display of batch lines
C: <-- Change to the right drive
CD \SAPPHIRE <-- Change to your Sapphire directory
SAPPHIRE %1 %2 <-- Jump to batch file SAPPHIRE.BAT
27
SAPPHIRE.BAT is a batch file that comes with Sapphire. It looks like this:
ECHO OFF <-- Stop display of batch lines
SRUN %1 %2 <-- Start up Sapphire
EXTERNAL <-- Jump to batch file EXTERNAL.BAT
This batch file must be in the directory where SRUN.EXE resides.
The %1 and %2 after the SRUN allow you to pass parameters to Sapphire, so you
can start up the batch file with SAPPHIRE LOCAL to run without a modem.
How EXTERNAL.BAT Works
Don't look for a file named EXTERNAL.BAT in the Sapphire package -- there isn't
one. EXTERNAL.BAT is created whenever Sapphire ends.
If Sapphire is shutting down because you're closing it (using the CLOSE
command, for example), EXTERNAL.BAT will be empty. As a result, you'll drop
straight through to the DOS prompt.
For doors and events, however, Sapphire copies other batch files into
EXTERNAL.BAT. So whatever was in those other batch files will get executed.
But how does this get us back to Sapphire?
Sapphire copies the other batch file into EXTERNAL.BAT, then appends some
additional instructions, as in this example:
C: <-- Switch to Sapphire's "home" drive
CD \SAPPHIRE <-- Switch to Sapphire's "home" directory
SAPPHIRE <-- Jump to the SAPPHIRE.BAT batch file
And thus, the circle is completed.
Of course, the extra instructions may vary, depending on where your copy of
SRUN.EXE resides and the way you started up Sapphire.
Batch Templates
You will use the DOORS and EVENTS commands to specify which batch files will be
copied to EXTERNAL.BAT. We will call these files "Batch Templates", because
although they end in .BAT, they are never actually run directly.
You can write the templates without regard to what happens after the program
ends, because that's taken care of when Sapphire copies them to EXTERNAL.BAT.
NOTE: A template must not call another batch file, unless that batch file
contains the code to get back to SAPPHIRE.BAT.
28
Here's an example. To call up the PYROTO door, you could write a template file
named PYROTO.BAT, which looks like this:
C: <-- Make sure you're on the right drive
CD \PYROTO <-- Change to the Pyroto directory
PYROTO /DOOR <-- Start up the program
Writing Door and Event Programs
When Sapphire calls a door or event, it always creates a file in the root
directory of the drive containing Sapphire, named:
SAPPHIRE.DAT
This file contains important information for doors and events. If you plan to
write door or event programs, you'll need access to this data.
Turbo Pascal source-code, describing the layout of the file, can be found on
the SAPPH112 diskette, under the name SDOOR.INC.
29
FILE TRANSFER
The highly technical information presented in this chapter is addressed to
experienced sysops only. If you are a new sysop, it would be best to avoid the
PROTOCOL, GET, GIVE, FILES and DUMBTERM commands, for now.
Sapphire will function perfectly well without file-transfer installed, so you
can safely skip this chapter and come back to it later.
What is File Transfer?
With Sapphire's file-transfer feature installed, you will be able to exchange
software with people who dial into your system, using the popular XMODEM,
YMODEM and ZMODEM protocols.
Sapphire maintains a list of the 500 most popular programs (providing there is
enough space on your hard disk), along with statistics and documentation.
The file-transfer feature requires a system equipped with a hard-disk with a
minimum of 1 Megabyte free space.
Installing File Transfer
In order to enable file-transfer (XMODEM, YMODEM and ZMODEM), you must install
several files, as follows:
--- The file-transfer program (DSZ.COM) must be copied to the main Sapphire
directory (usually named C:\SAPPHIRE). This will enable the DUMBTERM
command, even if the rest of the file-transfer installation is not
completed. To extract DSZ.COM from the DSZ archive file, enter the
command: ARCE DSZ
--- The SAPPH archive files (SAPPH112 and SAPPH112) and the file SAPPHIRE.S-D
(from SAPPH112) must be copied to the files directory (usually named
C:\SAPPHIRE\FILES).
Once these files are in place, Sapphire will create the files listing as soon
as you use GET, GIVE, PROTOCOL or FILES.
30
Adding Software Locally
To add a file to the software collection while you are at the console, you must
first place it in the files directory (usually named C:\SAPPHIRE\FILES).
Sapphire's DOS command comes in handy, here.
Afterwards, use the GIVE command. For example, if you'd added a file named
PYROTO.ARC, you would then enter this command:
==> GIVE PYROTO.ARC
You'd then be asked who this file is for (everybody, sysop, etc.), then asked
to write some documentation about the file. (This step is described later, in
more detail.)
Adding Software Remotely
A remote user follows essentially the same steps as a local user, though he
must first upload the software using one of the available protocols. (XModem-
Checksum, XModem-CRC, YModem, ZModem).
As a reward for contributing software, he is granted "double-your-minutes-back
for this visit and the next". For example, if it took him 10 minutes, he gets
an extra 20 minutes for the current visit, plus 20 extra minutes for the next
session.
How Online Documentation Works
After contributing a file, the contributor may write up to 48 lines of documen-
tation, which other people will be able to read before deciding whether or not
to download this file.
Online documentation that has already been written can be re-used. For
example, if you're making available a multi-file software package, you can tell
Sapphire to use one documentation file for all of the files.
Incidentally, if one of those software files is deleted, the documentation file
is retained -- as long as some other file is using it.
The documentation step uses the usual text editor that you use for writing
messages. No new skills need be learned. In fact, you can even include
private and exclusive messages in your documentation.
31
The documentation is saved in the files directory, in a file with the same
root-name as the original file. For example, a file named VARITALE.ARC would
have a documentation file named VARITALE.S-D associated with it. (S-D stands
for Software Documentation.) If you don't like the documentation that a user
has written, you can copy some better documentation over the S-D file. All S-D
files are standard text files, prepared with a text editor.
Of course, if several files point at the same documentation file, they won't
all share its root-name. The SAPPH111 & SAPPH112 files both the file
SAPPHIRE.S-D. As Sysop, you can use the FILES comand to change which documen-
tation file a software file uses -- although this will rarely be necessary.
Proper online documentation makes any file-transfer system much more efficient,
because people won't end up spending hours downloading things they really don't
need. Encourage your members to write enlightening documentation!
Transfer Protocols
The YModem supported by Sapphire is proper YModem, per the original specific-
ation. Some very respectable communications programs confuse the protocol
XModem-1K with YModem. If your users complain that YModem doesn't work for
them, suggest they switch their communications program from YModem to YModem-
Batch.
This version of Sapphire does not support "batch protocols" such that users can
upload or download several files with one command. This feature will be
supported in another version, if there is a demand.
32
APPENDIX A -- ORDERING INFORMATION
There are two ways to order from Pinnacle Software:
BY PHONE: Pinnacle Software accepts Visa and MasterCard for orders of $35 and
more. Call us at (514) 345-9578. The best times are between 6:00 PM
and 9:00 PM, Eastern Standard Time.
BY MAIL: If making payment by mail, it is best to use a certified cheque or
money-order. Personal cheques are held until cleared by your bank,
which can introduce a delay of several weeks.
Just a reminder: Sapphire is not a free program.
That is to say, you are welcome to evaluate the product free of charge for a
month. If you continue to use it after that, you must register your copy.
If, after a month, you decide not to register your copy, kindly do the follow-
ing:
(A) Stop using the product.
(B) Phone us or send us a letter, to tell us in what ways our
product needs to be improved before you'll register it. An
appropriate questionnaire and envelope can be printed out
by the HELP program.
You are encouraged to pass around copies of Sapphire, so that others may
evaluate it.
Additional Products from Pinnacle Software
The following diskettes may be obtained from Pinnacle Software. They can
greatly enhance your system. All three diskettes may be obtained from Pinnacle
Software for $35.
SAPPHSDA: This package contains this manual in WordPerfect format (Version
5.0). This enables WordPerfect users to print out a more attractive
manual than is possible with the generic text format that is usually
shipped with Sapphire.
33
SAPPHSDB: This package contains a collection of articles for your Sapphire
library. This includes the RULES file (rules for Sapphire members),
the STYLE file (tips for courteous and effective BBSing), plus a
sprinkling of commentaries that will spark discussion amongst your
users.
SAPPHSDC: Software grab-bag for your software collection. (All titles written
by Pinnacle Software.) Some of the programs:
HLRB Make Handy Little Reference Books
LOVEFIRE Adventure story for women only
LW Label Wizard label printing program
MEGADIII Mega-Doom -- the epitome of BASIC games
PHONEMEM Technique for remembering phone numbers
PINNARTX Amazing PC-ASCII art-work for any display
SPACEINV Arcade game for any display -- even monochrome
SV Set Video attributes for CGA, EGA, VGA, etc.
VARITALE BBS door program -- multi-author story-writing
WEED Utility to clean up text files
Also available from Pinnacle ($45 each -- includes registration) are the Pyroto
Mountain BBS/Door Adventure Gaming system and the new Vortex Warpgate BBS/Door
Science-Fiction Battle simulation.
34
APPENDIX B -- SAPPHIRE DESIGNER NOTES
This section contains no especially important information. It is presented
here for those people who might want to know why Sapphire was designed the way
it was.
You may find that this section helps you decide if Sapphire is the right BBS
for you.
NOTE: If you intend to run Sapphire from a store, or as a customer support
line, the information in this section is probably irrelevant.
Some Background
I've been involved with computers since 1971, and since those early days spent
sweating over a 10 character-per-second Teletype, my enduring passion has been
computer telecommunications. I'm fascinated by the way it enables us to reach
out and grasp the crystallized thoughts of a stranger. We can enter an amaz-
ing, exciting universe. Where time can stand still or flow sideways. Where
people can flash across a continent in the blink of an eye.
Over the years, I've worked out countless designs for computer telecommuni-
cations systems. Several of these designs went beyond the planning stage and
became reality. It excites me that we basement programmers have this chance to
pioneer new methods of communication.
Some of the projects I've been involved with include:
ACCESS: Canada's first national consumer telecomputing service.
PYROTO: The BBS/Game system (about 50,000 people play it each week).
The latest version is available from Pinnacle Software for $35.
(Runs also as a door.)
SASSy: A bizarre experiment that helped us learn what's wrong and
what's right about BBS's. The spec and a 2-year report are
available from Pinnacle Software ($10).
I also had the chance to provide some suggestions for Ron Sharp's extraordinary
INFINITy system, which is a BBS with a seemingly infinite number of message
bases.
35
Why Sapphire was Written
After years of seeing other kinds of BBS's, I had to admit that I didn't like
the way any of them worked. I'm not talking about minor annoyances -- my own
program has dozens of quirks that I intend to iron out. Rather, I'm talking
about fundamental design decisions.
To my knowledge (and based on my interpretation), every single one of the
existing BBS packages evolved from RBBS. Perhaps not in actual program code,
but certainly in concept. They all share the same general features, though
admittedly most are vastly superior to the original RBBS!
I was never tempted to copy RBBS, because I'd already written my first BBS
program long before anybody around here knew what a BBS was. It wasn't a very
sophisticated program, but it did put me on my own path.
It is important to understand that there was something of a computer revolution
in Montreal during the mid-to-late 70's. A large number of hackers set up
house on a local school board's HP2000 mini-computer. We evolved our own set
of idioms, so when the first "mainstream" BBS (an Apple Networks) came to town,
we said, "BBS? What's that? Bulletin Broadcast System?" We really didn't
know!
Our user-interface idioms found their way into various programs that were
developed locally. And thus they were found in ACCESS, then PYROTO, and
finally (after considerable mutation) in Sapphire.
Notes About the Design Philosophy
Commands
Sapphire uses word commands, rather than single-letter commands. I figure:
it's easier to remember words than mnemonics -- especially when the mnemonics
are tortuously contrived (as in the infamous [Y]ell for chat).
Since you don't run out of words the way you run out of letters, Sapphire
doesn't need multiple program layers where the same commands can mean different
things (e.g. [U]tilities or [U]pload), depending where you are.
Because I use word commands, I tend to make Sapphire somewhat more conversa-
tional than a letter-command system. I should mention that some people find my
programs fairly terse. What I mean to say is that, while Sapphire is not
chatty, it is more like a dialogue than you're likely to find on most BBS's.
36
Maintenance
Sapphire is a zero-maintenance BBS. I design programs this way partially
because I'm lazy and partially because in the 70's most Montreal hackers were
in a position to get cut off from their programs at any time. (Most of us
weren't really supposed to be on that central system.) As a result, my
associates and I got into the habit of designing programs that could survive on
their own.
40 Column Text
Many people have expressed surprise at my extensive use of 40-column text. The
obvious answer is that there are still plenty of 40-column screens out there;
the IBM-PC isn't the only personal computer in the world.
However, the real reason is that when people are reading boring text (such as
is necessary while learning to use a BBS), they want to scan it as quickly as
possible. The fact is, 80-column text requires too much eye-movement for easy
scanning; if newspapers can use narrow columns, so can I. Why should I be held
hostage to the actual width of my screen? No law forces us to fill each line.
The Cool Reception
The way by which potential members are introduced to Sapphire may not strike
you as particularly inviting. They are requested to send a message telling you
why they'd like to join. A few people are so offended, they hang up immediate-
ly.
The actual requirements for the application can easily be changed, though.
Maybe you'll merely ask them to tell you their shoe-size. But if you're
running your BBS as a public service, I'd advise against it.
The vast majority of BBS's go down within a few months because the sysops are
appalled at the uncaring nature of the users. But what can we expect? Total
strangers call our boards; should we expect them to be nice to us?
You can greet them all with open arms, but chances are, you'll be very disap-
pointed. These anonymous people simply have no particularly good reason to
think you're special.
Far too few novice sysops are aware of the simple fact that when you figura-
tively "throw open your doors", you can get crumbs, bums, free-loaders, and
jerks. You also get some beautiful people, but it's hard to remember that when
you've got some fellow who signs on, makes a beeline for the files section, and
ties up your line for hours as he pilfers your software collection -- leaving
nothing in return.
37
It is utterly futile to be bitter. The best solution is to be careful.
A sysop's worst enemy is his own good nature. He wants to spread his arms and
hug everybody who signs up to his system. At first, he's excited that so many
people are visiting his BBS. But later, when he realizes how many people treat
him like a bus service for software and information, he becomes disillusioned.
Perhaps I'm wasting my time telling this to new sysops, but the experienced
sysops will be nodding their heads, by now. The fact is: either you resign
yourself to being used as a commodity, or you learn the very difficult art of
rejecting new applicants.
Of course, what percentage you reject depends on the size of your BBSing
community. In Montreal, we have plenty of people calling BBS's. As a result,
I'm easily able to reject 95% of all applicants. Mind you, that means that for
the first 2 months, my BBS was excruciatingly dull. After all, how lively can
a BBS be, when it has only a handful of members?
Happily, though, I stuck to my guns. Nowadays, The Pinnacle Club has a nice
mix of people, all of whom are what most sysops consider "ideal BBSers". It
almost took more patience than I possess (since, like most sysops, I have an
urge to let everybody on), but it was worth it.
What makes Sapphire truly a "Zero-Maintenance BBS" is that you can judge people
by their reaction to the request that they justify their petition for member-
ship. You don't even have to phone them up! What people write in their
application usually tells the whole story.
For example, many people write things like, "Hi, I'd like to be a member.
Please make me a member. Thanks."
If such a person can't even be bothered to justify himself, it is extremely
unlikely he will make an effort to be a good, contributing member.
I've had some extraordinary experiences with this method of validation. One
fellow was incensed at the impersonal approach, but he took the time to express
his objections in detail. Bingo! I made him a member. He later posted a
message to the effect that he thought he'd "gone to BBS heaven", so impressed
was he by the quality of the messages left by members!
Sapphire can be easily modified to be less daunting to the new user. I don't
want to give you the impression that Sapphire must give all new applicants the
cold shoulder.
But if you're a new sysop, I hope you'll think about the kind of people you
want on your system and design accordingly. Ask a few experienced sysops for
advice.
Conclusion
38
Sapphire is not complete. There are numerous upgrades to be made. Some of
these are summarized in Appendix C.
However, I would like to make it clear that it is not my intention for Sapphire
to be all things to all people. I hope to retain the apparent simplicity of
the design.
In other words, there are many other BBS packages out there that are more
grandiose in intent. They can make your microcomputer look like a whopping big
mainframe. But if you want a BBS that is easy for your users and easy for you,
I think you'll want to run Sapphire.
39
APPENDIX C -- Versions 1.1 and 2.x
Version 1.1 of Sapphire is not much different from 1.0 except for a few minor
phrasing changes to improve user understanding of Sapphire concepts.
We are currently drawing up the plans for Sapphire Version 2.0. The design
work is now complete, so it's time to get down to the coding. That will start
about a week after we send this manual out.
Thank-You
During July of 1989, almost all Sapphire sysops around the world were contacted
by phone by Pinnacle Software, in order to help us plan what will go into
Version 2.x. Let us assure you that your opinions have been discussed at
length and will have a positive effect on upcoming versions of Sapphire. We
thank you for sharing your thoughts with us.
40
INDEX
Can't find it here? Try the Table of Contents.
.BAT 27 Crash 9, 20
.S-D 32 Credit Cards 33
.TXT 16, 19 Customization 18
%1 28 Data Terminal Ready 8
& Commands 9 Default gear 18
ACTIVITY 23 Devalidation
Aliases 20 Skipping 14
ALT-F10 20 Diamond 20
ALT-F6 20 DIP Switches
ALT-F7 20 Modem 8
ALT-F8 20 Diskettes
Announce 14, 20 Problems 10
ARTICLE 16 Documentation
Assistance ii Uploaded software 31
Awaiting Visitor 6 DOORS 24, 26, 28
B* files 15 DOS 24, 26
B001 15 Download
Backup 12 Definition 3
Backups 15 DSZ.COM 30
BANISH 24 DTR 8
F-Key 14 DUMBTERM 24, 30
Banishment 20 EDLIN 18
Skipping 14 ERASE 16, 24
Basic Member 22 EVENTS 24, 26, 28
Batch protocols 32 EXPERT 23
BBS EXTERNAL.BAT 28
Brands 1 F10 20
Definition 1 F2 20
BUFFERS= 5 F9 20
Bugs 10 Feedback 24
Bulletin-board 1 Fido 26
BYE 22 File-transfer 30
PASSWORD 19 FILES 23, 30
Call-back time 14 Problems 10
Carrier Detect 8 Files collection 17
CD 8 FILES= 5, 10
CHANGE 14, 23 Floppies
CHAT 20, 23 Disadvantages 3
Enable/Disable 13 Freeze out 14
CLOSE 25 Function keys 13
Club 1 Gear Shift 18
Co-Sysop 24 GET 23, 30
Command levels 19 GIMMICKS 23
Compressing GIVE 23, 30, 31
Not needed 12 GRAPHICS 23
CONFIG.SYS 5, 10 Happy face 20
Copyright ii, 18 Hayes modem 8
41
Heat 9 Number keys 18
HELP 22 OBSERVE 23
Help! 8 Output speed 18
HINTS 23 Password
Hours-between-calls 13 Changes 19
I/O error 10 SYSOP 13, 24
I/O Errors Passwords 19
Unexplained 10 PCCONFIG 6
IBM-PC 1 Phone
Icons 19 Off-hook 12
Inactive user 15 Pinnacle Club 18
INFINITy 35 Pinnacle Software
INFO 22 Business hours 33
Inner Circle 24 PINNCL02
Installation ii Description 33
Interrupt-driven 11 PINNCL03
Level Description 34
Description 16 PinnClub 1
LIBRARY 16, 23 Design 2
Description 16 Poll-driven 11
Line-noise 18 Power-sysop 2
LOCAL 12 Printer 20
Parameter 6 Privacy
Logo Users' 14
Sign-on 14 Private
LOGO.TXT 20 Reading 14
LPT1 20 PROBE 24
Maintenance Problems 8
Files collection 17 PROTOCOL 23, 30
Library 16 PYROTO 29, 35
Message files 16 RAM
Time needed 1 Requirements 3
Userfile 15 READ 23
Member privileges 22 REGISTER 33
Members 1 Registration ii
Membership level Rename 21
Description 16 F-Key 14
Message REVIEW 23
Maximum size 3 Root-name 32
Message files 16 RUN 23
MESSAGES 23 S-D
Deleting 16 Definition 32
Limited number 14 SAPPHIRE.BAT 28
Saving 16 SAPPHIRE.DAT 29
Modem SAPPHIRE.S-D 32
Disabling 12 SASSy 35
Problems 9, 11 SCMDL.DAT 19
MOVE 23 SCMDL.TXT 22
NAMES 23 SDOOR.INC 29
New user 15 Security levels 22
Noise 13 SEND 22
Non-member 22 File 14
42
Serial routines 11 Definition 12
SET 23 Validation 20
Shareware ii VERSION
Shut-down 14, 20 VERSION 22
Sign-on Versions ii
Logo 14 Wombat 21
Signing On 12 Wordstar 18
SINFO.TXT 19 XMODEM 30
SLOGO.TXT 18, 20 XMODEM-1K 32
SNEWH.TXT 19 YMODEM 30, 32
SNEXT.DAT 15 Yoo-Hoo 13, 21
Software collection 17 Zero-maintenance
Sound 13, 20 Goals 1
Special Member 23 ZMODEM 30
SPECS 18, 22
SRUN 26
Status Line 19
STIME.DAT 15
SUSER.DAT 15
Switch 8
SYSOP 12
Definition 1
Password 13, 24
Sign-on 13
Time-out 16
System Operator 12
TEXT 23
Text editor
Examples 18
Tim 31
TIME 23
Add 13
Remove 13
Upload bonus 31
Time-Out
Inactive user 16
Top lines
Status 19
Top Notch 23
Total Configuration 6
Triangle 20
Ultra-Mode 14, 20
Upload
Definition 3
Uploads
Number of 17
User
Inactive 15
User file 15
Userfile 15
USERS 23
VALIDATE 24
43